There are many circumstances in which a computer system wishes to present a changing value to the user, and requires suitable user interface components to achieve this. When the required display is simple, or when the value changes infrequently, there is no difficulty. When complex and intricate displays are required, or when the value may change much more rapidly than can possibly be presented by the available hardware in a timely manner, it becomes more challenging to create the appropriate components. Moreover, it is often desirable, for aesthetic reasons and to enhance user acceptance, to introduce internal behaviour into the value presentation, such as a time lag before new values are presented or the presentation of intermediate values to aid clarity when the value changes by a large amount. This level of complexity becomes ever more important when building more sophisticated user interfaces, now possible with modern hardware devices and increasingly demanded by users.